package c_observer.a_origin;

/**
 * Created by wug on 2016/6/16 0016.
 */
public class MainTest {
    public static void main(String[] args) {
        Car car = new Car();
        CarMonitor carMonitor = new CarMonitor(car);

        for (int i = 0; i < 10; i++) {
            try {
                Thread.sleep(1000L);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            car.carController();
            carMonitor.show();
        }
    }

    /**
     * 首先从data的获取方式上来看 这是一种pull 的方式获取
     * carMonitor从car 那里拉取数据 然后展示
     * 首先我们不讨论这种方式的好坏
     *
     * 这个只是查看车辆即时信息
     *
     * 假如 有这么一个需求
     * 需要知道这辆车的平均速度？
     * 还有统计这辆车开的里程数？
     *
     * 按照上述做法 我们需要再在Car 中添加另一些方法，并将这种算法添加到Car中（类似计算剩余油量）。
     * 这样做显然是不合适的吧？！！！
     *
     * 连car都抱怨了：明明是观察我,为什么我需要把你的算法加入到我自身??????
     *
     */
}
